package com.hrbxlh.dao;

import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Repository;

/**
* -------------------------------------------------------
* Copyright (c) 2017, 鑫联华信息科技股份有限公司
* All rights reserved.
* FileName：ChapterDao.java
* Description：ChapterDao类,负责操作章节数据数据。
* History：
* Date           Author               Desc
* 2017.3.27		  xzx                 建立
* -------------------------------------------------------
*/

@Repository
public interface ChapterDao {
	
	/**
	 * @description 添加章节
	 * @param Map<String,Object> paramMap
	 * @return boolean (true 成功 ,false失败)
	 * @throws Exception
	 */
	public void addChapter(Map<String, Object> paramMap) throws Exception;
	
	/**
	 * @description 获取某课程的章节信息
	 * @param Map<String,Object> paramMap
	 * @return Map<String,Object>
	 * @throws Exception
	 */
	public List<Map<String, Object>> getCourseChapter(Map<String, Object> paramMap) throws Exception;
	
	/**
	 * @description 修改章节
	 * @param Map<String,Object> paramMap
	 * @return boolean (true 成功 ,false失败)
	 * @throws Exception
	 */
	public void saveChapter(Map<String, Object> paramMap) throws Exception;
	
	/**
	 * @description 查询某课程有没有这个章节
	 * @param courseId,chapterNum
	 * @return
	 * @throws Exception
	 */
	public Map<String, Object> getChapterByClassNum(Map<String, Object> paramMap) throws Exception;

	/**
	 * @description 删除章节信息
	 * @param courseId,chapterNum
	 * @return true成功false失败
	 * @throws Exception
	 */
	public void delChapter(Map<String, Object> paramMap) throws Exception;
	
	/**商莹
	 * @description 删除章节中的课件、作业、视频
	 * @param courseId,chapterNum,type
	 * @return true成功false失败
	 * @throws Exception
	 */
	public boolean delChapterCoHoVo(Map<String, Object> paramMap) throws Exception;
	
	/**
	 * @description 删除本章节作业信息
	 * @param courseId,chapterNum
	 * @return true成功false失败
	 * @throws Exception
	 */
	public void delChapterTask(Map<String, Object> paramMap) throws Exception;

	/**
	 * @description 删除本章节学生学习信息
	 * @param courseId,chapterNum
	 * @return true成功false失败
	 * @throws Exception
	 */
	public void delChapterStudy(Map<String, Object> paramMap) throws Exception;
	
	/**
	 * @description 查询某课程某章节的信息
	 * @param courseId,chapterId
	 * @return Map
	 * @throws Exception
	 */
	public Map<String, Object> getCourseOneChapter(Map<String, Object> paramMap) throws Exception;
	
	/**
	 * @description 通过章节名称获取章节信息
	 * @param Map<String,Object> paramMap
	 * @return Map<String,Object>
	 * @throws Exception
	 */
	public List<Map<String, Object>> getChapterByName(Map<String, Object> paramMap) throws Exception;
	
	/**
	 * @description 通过章节名称获取章节信息
	 * @param Map<String,Object> paramMap
	 * @return Map<String,Object>
	 * @throws Exception
	 */
	public List<Map<String, Object>> getChapterHomeworkList(Map<String, Object> paramMap) throws Exception;
	
}
